package com.ghsc.ghxc.jsb.ui.live.view.cust

import com.ghsc.ghxc.jsb.ui.message.view.CustMsgType
import com.netease.yunxin.kit.corekit.im.custom.CustomAttachment
import org.json.JSONObject

/**
 * 项目：GuoHuaMall
 * 包名：com.ghsc.ghxc.ui.message.yunxin.view
 * 类名：CusRedAttachment
 * 创建时间：2023/10/24 20:46
 * 创建人 @author： xiaolin
 * 描述 ：Todo...分享直播间
 */
//声明构造方法，这里面需要调用父类方法，并传入int值作为消息类型，自定义消息类型推荐从1000开始
class CusShareLiveAttachment : CustomAttachment {

    //自定义消息解析之后的值，本例代表自定义消息只有一个String类型的值

    // id
    var userId:String =""
    //昵称
    var nickName:String =""
    //头像
    var headImg:String =""

    //标题
    var title:String =""
    //封面
    var imgCover:String =""
    //直播链接
    var liveUrl:String =""
    //直播间id
    var liveId:String =""
   //主播id
    var anchorId:String =""
    //标签 皇冠 金牌
    var tags:String =""
    // 代理
    var agent:String =""







    constructor() : super(CustMsgType.CUST_IM_SHARE_LIVE) {
    }
//    constructor(custmoerText: String?) : super(CustMsgType.CUST_IM_RED) {
//        this.custmoerText = custmoerText
//    }


    //重写数据封装方法，将您需要传递的内容转换为JSONObject格式进行传输，所以您可以制定自己的数据格式。
    //这个示例表示，把属性custmoerText的内容转换为JSONObject，用于消息发送过程中的传递
    override fun packData(): JSONObject? {
        val jsonData = JSONObject()
        try {

            jsonData.put("userId", userId)
            jsonData.put("nickName", nickName)
            jsonData.put("headImg", headImg)

            jsonData.put("title", title)
            jsonData.put("imgCover", imgCover)
            jsonData.put("liveUrl", liveUrl)
            jsonData.put("liveId", liveId)
            jsonData.put("anchorId", anchorId)
            jsonData.put("tags", tags)
            jsonData.put("agent", agent)
        } catch (exception: Exception) {
        }

        return jsonData
    }


    //重写数据解析方法，这里面数据以JSONObject格式进行传输，所以您可以制定自己的数据格式。
    //这个示例表示，自定义数据格式为{"customer_message_key":"我是一个自定义消息"}
    override fun parseData(jsonData: JSONObject?) {
        //todo 从接收到的消息内容中解析您的数据
        try {
            userId = jsonData!!.getString("userId")
            nickName = jsonData!!.getString("nickName")
            headImg = jsonData!!.getString("headImg")
            title = jsonData!!.getString("title")
            imgCover = jsonData!!.getString("imgCover")
            liveUrl = jsonData!!.getString("liveUrl")
            liveId = jsonData!!.getString("liveId")
            anchorId = jsonData!!.getString("anchorId")
            tags = jsonData!!.getString("tags")
            agent = jsonData!!.getString("agent")
        } catch (exception: Exception) {
        }
    }

    override fun getContent(): String? {
        return "[直播间分享]"
    }




}

